Editors:

  • TBD

Additional artifacts:

  • Information Exchange Policy 2.0 Framework Definition – FIRST specification. This prose specification is one component of a Work Product that also includes:

  • STIX™ Version 2.1 – OASIS specification

Related work:

  • This specification replaces or supersedes:

Abstract:

The FIRST Information Exchange Policy (IEP) 2.0 Framework Definition specifies how Computer Security Incident Response Teams (CSIRTs), security communities, organizations, and vendors may support their information sharing and information exchange initiatives.

The framework is intended to support both CSIRT’s existing policies to define information exchange and new policies to define matured and evolved CSIRT information exchange. This document defines the approach to express IEP 2.0 using Structured Threat Information Expression (STIXTM) language via the use of a marking definition object.

1.​ Data Markings in STIX

Data markings represent restrictions, permissions, and other guidance for how data can be used and shared. For example, data may be shared with the restriction that it must not be re-shared, or that it must be encrypted at rest. In STIX, data markings are specified using the marking-definition object. For general information on data markings in STIX, see section 7.2 of STIX™ Version 2.1 - OASIS specification.

2. The Information Exchange Policy (IEP) Marking Object Type

The Information Exchange Policy (IEP) marking definition type, version 2.0, defines the STIX object types required to share the IEP 2.0 standard. IEP is intended to support both CSIRT’s existing policies to define information exchange and new policies to define matured and evolved CSIRT information exchange. Information sharing happens from a provider, towards one or more recipients.

Because IEP 2.0 data markings are not part of the STIX 2.1 specification, they must be specified using the Extension Definition object as described in section 7.3 of the specification.

The tables below describe the properties of a STIX 2.1 IEP 2.0 marking definition type. These properties are based on the marking-definition object type described in section 7.2 of the STIX 2.1 specification. Notice that the deprecated properties of the marking definition object type are not used.

Note that when using this extension, external_references is required.

Required Common Properties

type, spec_version, id, created, extensions, external_references

Optional Common Properties
Not Applicable Common Properties

confidence, defanged, created_by_ref, granular_markings, labels, lang, modified, object_marking_refs, revoked

Property Name Type Description

type (required)

string

The type property identifies the type of object. The value of this property MUST be marking-definition.

name (required)

string

This statement can be used to provide a name for an IEP Marking Definition implementation

extensions (required)

dictionary

Specifies the IEP 2.0 marking “color” as an extension dictionary.

There MUST be only one dictionary key and it MUST be extension-definition—​762e2e97-ee51-43e5-a9ea-165fbb862c4a, which is the id of the extension-definition object associated with IEP-2.0.

The corresponding dictionary values MUST be the iep-2-0-content data type described below.

Type Name: iep-2-0-content

Property Name Type Description

extension_type (required)

string

The extension_type property indicates the type of extension is being used. The value of this property MUST be property-extension

encrypt_in_transit (required)

string

States whether the received information has to be encrypted when it is retransmitted by the recipient.

The value of this property MUST be one of the following:

must

may

permitted_actions (required)

enum

States the permitted actions that recipients can take upon information received.

The value of this property MUST come from the iep-permitted-actions-enum enumeration.

affected_party_notifications (required)

string

Recipients are permitted to notify affected third parties of a compromise or threat.

The value of this property MUST be one of the following:

may

must-not

tlp (required)

string

Recipients are permitted to redistribute the information received within the redistribution scope as defined by the enumerations.

The value of this property MUST be one of the following:

red

amber

green

white

provider_attribution (required)

string

Recipients could be required to attribute or anonymize the provider when redistributing the information received.

The value of this property MUST be one of the following:

may

must

must-not

unmodified_resale (required)

string

States whether the recipient MAY or MUST NOT resell the information received unmodified or in a semantically equivalent format.

The value of this property MUST be one of the following:

may

must-not

iep_id (required)

string

Provides a unique ID to identify a specific IEP implementation. The policy ID must be either UUIDv4 or UUIDv5 as specified in RFC4122

iep_version (required)

float

Defines which version of the IEP Framework this policy implements. The value of this property MUST be 2.0, as this extension does not cover earlier versions.

description (required)

string

This statement can be used to provide some background information about the IEP implementation.

start_date (required)

timestamp

States the UTC date that an IEP is effective from.

end_date (optional)

timestamp

States the UTC date that an IEP is effective until.

Enumerations

Type Name: iep-permitted-actions-enum

Vocabulary Value Description

none

Recipients SHOULD NOT act upon the information received. The information SHOULD only be used for internal informational purposes, and internally visible actions, externally visible indirect actions and externally visible direct actions SHOULD NOT be performed.

contact-for-instruction

Recipients MUST contact the Providers before acting upon the information received. An example is where information redacted by the Provider could be derived by the Recipient and identify the affected parties.

internally-visible-actions

Recipients MAY conduct actions on the information received that are only visible on the Recipient’s internal networks and systems, and MUST NOT conduct actions that are visible outside of the Recipients networks and systems, or visible to third parties.

externally-visible-indirect-actions

Recipients MAY conduct internally visible actions, and MAY also conduct indirect, or passive, actions on the information received. Recipients MUST NOT conduct direct, or active, actions that will be visible by Threat Actors mentioned within the shared information.

externally-visible-direct-actions

Recipients MAY conduct any actions on the information received.

3. Extension Definition Object for IEP 2.0

{
    "id": "extension-definition--762e2e97-ee51-43e5-a9ea-165fbb862c4a",
    "type": "extension-definition",
    "spec_version": "2.1",
    "name": "IEP 2.0",
    "description": "This defines IEP 2.0 as a STIX extension",
    "created": "2022-12-19T00:00:00.000Z",
    "modified": "2022-12-19T00:00:00.000Z",
    "created_by_ref": "identity--b3bca3c2-1f3d-4b54-b44f-dac42c3a8f01",
    "schema": "https://github.com/oasis-open/cti-stix-common-objects/tree/master/extension-definition-specifications/iep-marking-definition-762",
    "version": "1.0.0",
    "extension_types": [
        "property-extension"
    ]
}

4. IEP 2.0 Data Marking Example

Basic example of the IEP Data Marking

{
    "type": "marking-definition",
    "spec_version": "2.1",
    "id": "marking-definition--da05d443-ad8d-46fc-abf5-31d3d00290f1",
    "created": "2024-01-10T14:52:41.853121Z",
    "name": "IEP data marking",
    "extensions": {
        "extension-definition--762e2e97-ee51-43e5-a9ea-165fbb862c4a": {
            "extension_type": "property-extension",
            "encrypt_in_transit": "may",
            "permitted_actions": "externally-visible-direct-actions",
            "affected_party_notifications": "may",
            "tlp": "amber",
            "provider_attribution": "must-not",
            "unmodified_resale": "must-not",
            "iep_id": "0224bfdf-ea3a-49c3-96f6-66d908bb1845",
            "iep_version": 2.0,
            "description": "This is a TLP-AMBER Information Exchange Policy",
            "start_date": "2022-10-01T00:00:00Z"
        }
    }
}

Basic example with optional end date field

{
    "type": "marking-definition",
    "spec_version": "2.1",
    "id": "marking-definition--da05d443-ad8d-46fc-abf5-31d3d00290f1",
    "created": "2024-01-10T14:52:41.853121Z",
    "name": "IEP data marking",
    "extensions": {
        "extension-definition--762e2e97-ee51-43e5-a9ea-165fbb862c4a": {
            "extension_type": "property-extension",
            "encrypt_in_transit": "may",
            "permitted_actions": "externally-visible-direct-actions",
            "affected_party_notifications": "may",
            "tlp": "amber",
            "provider_attribution": "must-not",
            "unmodified_resale": "must-not",
            "iep_id": "0224bfdf-ea3a-49c3-96f6-66d908bb1845",
            "iep_version": 2.0,
            "description": "This is a TLP-AMBER Information Exchange Policy",
            "start_date": "2022-10-01T00:00:00Z"
        }
    }
}

Example of the Bundle with an IEP Data Marking

{
    "type": "bundle",
    "id": "bundle--1b068194-6f34-4a7f-b73d-407d8375b81d",
    "objects": [
        { 
            "type": "marking-definition", 
            "spec_version": "2.1", 
            "id": "marking-definition--d68dc6bf-c181-424b-85e1-5a92868f01b6", 
            "created": "2022-10-01T00:00:00.000Z", 
            "name": "IEP data marking",
            "external_references": [
                {
                    "source_name": "IEP",
                    "description": "Information Exchange Policy",
                    "url": "https://www.first.org/iep"
                },
                {
                    "source_name": "TLP",
                    "description": "Traffic Light Protocol",
                    "url": "https://www.first.org/tlp"
                }
            ],
            "extensions": {
                "extension-definition--762e2e97-ee51-43e5-a9ea-165fbb862c4a": {
                    "extension_type": "property-extension",
                    "encrypt_in_transit": "may",
                    "permitted_actions": "externally-visible-direct-actions",
                    "affected_party_notifications": "may",
                    "tlp": "amber",
                    "provider_attribution": "must-not",
                    "unmodified_resale": "must-not",
                    "iep_id": "0224bfdf-ea3a-49c3-96f6-66d908bb1845",
                    "iep_version": 2.0,
                    "description": "This is a TLP-AMBER Information Exchange Policy",
                    "start_date": "2022-10-01T00:00:00.000Z"
                }
            }
        }
    ]
}